The present invention relates generally to an equalizer for a mobile communication system and, more particularly, to a pre-filter for an equalizer having adjustable filter coefficients.
Mobile communication systems use numerous signal processing techniques to improve the quality of received signals. Equalization is one technique that is commonly used to compensate for intersymbol interference (ISI) created by multipath propagation within time-dispersive channels. When the bandwidth of the communication channel is close to the signal bandwidth, modulation pulses are spread in time and overlap one another resulting in ISI. ISI causes higher error rates at the receiver and has been recognized as a major obstacle to high-speed data transmission over mobile radio channels. Equalization compensates for channel-induced distortion to reduce intersymbol interference and therefore reduces error rates at the receiver.
The two main operating modes of an equalizer include training and tracking. First, a known, fixed length training sequence is sent by the transmitter. The training sequence is typically a pseudo-random binary signal or a fixed, prescribed bit pattern that is known a priori, by the receiver. User data is transmitted immediately following the training sequence. The training sequence allows the receiver to estimate an initial set of filter coefficients used when the receiver begins receiving user data. As user data is being received, the equalizer at the receiver typically utilizes an adaptive algorithm to continuously evaluate the channel characteristics and make needed adjustments to the filter coefficients. Thus, the equalizer tracks changes in the impulse response of the communication channel and continuously updates the filter coefficients to compensate for such changes.
Equalization techniques can be subdivided into two general categoriesxe2x80x94linear and non-linear equalization. A linear equalizer can be implemented as a finite impulse response (FIR) filter, otherwise known as a transversal filter. In this type of equalizer, the current and past values of the received signal are linearly weighted by the filter coefficients and summed to produce the output. Linear filters are typically used in channels where ISI is not severe. In some non-linear equalizers, decisions about previously detected symbols are used to eliminate intersymbol interference in the current symbol. The basic idea is that once a symbol has been detected and decided upon, the ISI that it induces on future symbols can be estimated and subtracted out before a decision is made on the subsequent symbols. Because of severe ISI present in mobile radio channels, non-linear equalizers are commonly used in mobile communications.
When the signal has no memory, the equalizer may employ symbol-by-symbol detection. On the other hand, when the transmitted signal has memory, i.e., the signals transmitted in successive symbol intervals are interdependent (which is typically the case when ISI is present), the optimum detector is a maximum likelihood sequence detector which bases its decisions on observation of a sequence of received signals over successive signal intervals. Thus, many equalizers used in mobile communications use a maximum likelihood sequence estimation (MLSE) equalizer. An MLSE equalizer typically has a large computational requirement, especially when the delay spread of the channel is large.
In some equalizers, such as a decision feedback equalizer (DFE) or decision feedback sequence estimation (DFSE) equalizer, the received signal is filtered before the decision algorithm is applied. Finding the appropriate filter coefficients accounts for a substantial portion of the computational load of the equalizer.
The present invention provides a computationally efficient method for computing coefficients of a finite impulse response pre-filter applied prior to the decision algorithm in the equalizer. The filter may be used, for example, in a decision feedback equalizer or in a Decision Feedback Sequence Estimation (DFSE) equalizer. According to the present invention, a processor estimates the impulse response of the communication channel and, based on the estimate of the channel impulse response, generates a system of linear equations that can be solved to determine the filter coefficients {overscore (f)} of the pre-filter. Expressed in mathematical notation, a system of linear equations is defined as follows:
B{overscore (f)}={overscore (c)}
where B is a complex-valued channel coefficient matrix, {overscore (f)} is a complex-valued vector representing the filter coefficients, and {overscore (c)} is a complex-valued target vector. The values of the channel coefficient matrix B and the target vector {overscore (c)} are known and derived from the estimates of the channel impulse response generated by the processor based on a training sequence. To obtain the pre-filter coefficients for the filter, the system of linear equations is solved for the filter coefficient vector {overscore (f)}.
The standard method used in the prior art for finding the filter coefficient vector {overscore (f)} requires performing a Cholesky factorization of the channel coefficient matrix B. Performing this Cholesky factorization requires approximately Lf2 operations, where Lf is the length of the pre-filter. According to the present invention, the number of operations needed to find the filter coefficient vector {overscore (f)} is significantly reduced by taking advantage of the structural characteristics of the channel coefficient matrix B. The channel coefficient matrix B is partitioned into four sub matrices as follows:   B  =      "LeftBracketingBar"                            T                          R                                                  R            H                                    X                      "RightBracketingBar"  
Filter coefficient vector {overscore (f)} is partitioned into two subvectors ({overscore (v)},{overscore (m)}) and target vector {overscore (c)} is partitioned into two subvectors ({overscore (y)},{overscore (a)}). Using the partitions of the coefficient matrix B, filter coefficient vector {overscore (f)}, and target vector {overscore (c)}, the system of linear equations is broken into two equations with two unknowns, {overscore (v)} and {overscore (m)}.
The sub-matrix T of the coefficient matrix B is a Toeplitz Hermitian matrix. Solution of the system of linear equations requires that the sub-matrix T be inverted. Since T is a Toeplitz Hermitian matrix, a fast Toeplitz algorithm is used to invert T, thereby greatly reducing the number of operations needed to find the solution for the filter coefficient vector {overscore (f)}.
As described more fully below, additional properties of the channel coefficient matrix B may optionally be used to further reduce the number of operations needed to find the filter coefficients for the pre-filter and therefore improve computational efficiency.